The use of computers to send and receive electronic mail messages is becoming very popular globally. Numerous companies (both network and software related) offer electronic mail packages (E Mail) and services. Currently, electronic mail services provide a convenient alternative to the more formal facsimile transmissions of memos and documents. Electronic mail is typically used to send relatively short informal messages between computers within an organization, or to a party located at a distant location or company. Electronic mail services are basically a wire line-to-wire line, point-to-point type of communications. Electronic mail, similar to facsimile transmissions, provides a one-way message. A recipient typically does not have to interact with the message. Electronic mail, unlike facsimile, is a non-real-time message transmission architecture.
FIG. 1 illustrates a block diagram of a typical electronic mail system 10 in commercial use such as by AT&T Corporation. The electronic mail system 10 is comprised of a plurality of single processors or groups of processors #1-#N with N being any number with each group having individual processors A-N with N being any number. The groups of processors #1-#N may be distributed at locations which are linked by the public switch telephone network 12. The individual processors may be portable personal computers with a modem which are linked to the public telephone switch network 12 through wired or RF communications as indicated by a dotted line. Groups of associated processors #1-#3 may have diverse configurations with the illustrated configurations only being representative of possible architectures of groups of associated processors. The groups of associated processors may be connected to a host or mainframe computer through various communication mechanisms such as direct telephone communications (#1), communications through a local area network (#2), or communications through a private automatic branch exchange (#3). It should be understood that the illustrated architecture of the single and associated groups of processors is only representative of the state of the art with numerous variations being utilized. Many of the groups of associated processors are contained within the database network of a single company or organization located at distributed geographical locations throughout a country or in different countries.
Communications between an originating processor A-N, which may be any of the processors within the groups of associated processors #1-#3 or processor #N and a destination processor A-N are completed through the public switch telephone network 12 to one or more gateway switches with mailboxes 14 which function to store the message for delivery to the destination processor at a later point in time. The gateway switches with mailboxes 14 have a storage location, associated with each subscriber which may be any of the computers A-N within the associated groups of computers #1-#3 and individual computers #N, which provides retrieval capability of the electronic message when it is not delivered directly to the destination processor A-N such as when the destination processor does not go directly off hook in response to an attempt to deliver the message from storage in the electronic mail gateway mailbox storage location associated with the destination processor. In order to originate an electronic mail message, the originating processor A-N calls an associated gateway switch with mailboxes 14 via telephone through the usage of a modem connection. This connection is made through the public switch network 12. A gateway switch with mailboxes 14 answers and provides a data connection to the originating processor A-N. The gateway switch with mailboxes 14 typically contains the originating processor A-N file and verifies that the sending processor is able to originate an electronic mail message via some form of password protection. Upon verification of the entry password, the electronic gateway switch with mailboxes 14 down loads software and entry screens that are displayed on the originating processor to permit a message to be composed. Thereafter, the message is composed and transferred from the originating processors gateway switch with mailboxes 14 to the destination processors gateway switch with mailboxes where the message is stored and an attempt is made to deliver the message to the destination processor via telephone connection through the public switch telephone network 12.
Electronic mail systems have several common items that must be entered in order to originate and send (format) an electronic message. These items include the destination address, which consists of either the person or company's name, an abbreviated form of the person's company or name, or a series of digits or alphanumeric characters that must be entered to indicate to the electronic mail system the destination address of the recipient processor. Another item is an identification of the originating processor which may be an indication of the sender or the originator's name, company name, an abbreviated form of the originator's name or company name, or a numeric or alphanumeric entry that comprises the sender's name or address. This information is collectively an identification of the originating processor. Another item is the subject of the message which is typically a short reference as to the subject matter of the text or message that follows. Finally, the message or message text must be entered which is the information that is inputted by the person or machine which is originating the message at the originating processor A-N. Upon completion of the message text, the user or machine operating the originating processor A-N enters a series of commands or keystrokes on the originating processor to transmit the message to the gateway switch with mailboxes 14 associated with the originating processor A-N.
The transmission of the message from the originating processor's gateway switch with mailboxes 14 to the destination processor's electronic mail gateway switch with mailboxes is via analog or digital communications through the public switch telephone network. The destination gateway switch with mailboxes 14 contains the destination address of the recipient destination processor.
Upon arrival of the information at the destination processor's gateway switch with mailboxes 14, one of two events takes place. The information is typically stored in the destination processor's electronic mailbox for later retrieval by the destination processor through interaction by the user of the destination processor. This typically happens as a result of the fact that a person is not located at the destination processor at the time of delivery of the message to the gateway switch with mailboxes 14 or the destination processor is not turned on and connected to the public switch telephone network 12. A second methodology is that the destination processor's gateway switch with mailboxes automatically dials the gateway processor's telephone number to deliver the information. In the situation where the destination processor is within a company or organization, the information may be delivered to the host computer. The destination processor's host computer stores the information until the destination processor calls the host computer to retrieve the information. In both of the methodologies described above, information delivery requires periodically calling a host computer or a mailbox at the gateway switch with mailboxes 14 to determine if new messages are present. This incurs additional costs in telephone calls and/or labor. If the host computer or gateway switch is not checked frequently, the information becomes untimely in its delivery. If the destination processor frequently checks the host computer or gateway switch, then additional costs and telephone calls and/or labor are encountered.
As personal computers are used more frequently by business travellers, the problem of electronic mail delivery becomes considerably more difficult. A business traveller carrying a portable PC has great difficulty in finding a telephone jack to connect the PC to fetch electronic mail from either a host computer or a gateway switch. Connections for a PC's modem are difficult to find in airports and with the advent of digital PABX's in businesses the telephone connectors are incompatible with a PC's analog modem. Hotels and motels oftentimes have internal PABX's that prevent calls from automatically being placed by the user's PC to electronic mail gateway switches to retrieve information. Most portable PC modems will only operate correctly when connected to a true outside telephone line that has telephone battery voltages and dial tone available to permit the number to be dialed direct. The inability to find an appropriate connection to connect the PC modem when travelling has contributed to the degradation of electronic mail reception when the recipient is travelling. When travelling internationally, this problem is further compounded by the fact that most electronic mail gateway mailboxes require a 1-800 toll free number dialed in order to connect the mailbox. Almost all 1-800 telephone numbers are available for continental use only and cannot be accessed from a foreign country.
Industry trends make it increasingly difficult to receive electronic mail. When PC's were exclusively considered an office or desktop machine, it was less difficult to deliver electronic mail. Advances in the state of the art in microelectronics have permitted PC's to be downsized to very lightweight portable (notebook), and notebook size computers. These portable units have the computing and storage power of the former desktop units and have lent themselves to the trend that they now become very portable in their utilization. They are small enough that they can easily fit into an attache case and/or a suit pocket. The net result is that the portable unit no longer resides in the office or the desktop. The portable unit now may be taken home at night, as well as on travel with the user, such as for business travel. Increased portability of PC's further aggravates the problem of automatic electronic mail delivery as a consequence of portability eliminating the wired communication paths which have been typically used in state of the art electronic mail systems. The electronic mail industry is currently experiencing a rapid growth rate.
Numerous communication companies are offering forms of electronic mail services. However, a problem arises that users of one electronic mail system currently cannot send electronic mail to a subscriber of another electronic mail system (e.g., AT&T E-mail to Sprint Mail, etc.). Numerous attempts are currently underway in the industry to solve this problem. Current attempts are the utilization of common protocols between electronic mail systems (e.g.X.400). However, the proposed system does not resolve the problems resultant from portability and travelling situations described above.
FIG. 2 illustrates a diagram of a prior art network 100 developed by Telefind Corporation of Coral Gables, Florida, which provides worldwide paging and data transmission capability and is a preferred form of the RF information transmission network used in practicing the present invention. This network is described in detail in U.S. Pat. Nos. 4,866,431, 4,868,558, 4,868,562, 4,868,860, 4,870,410, 4,878,051, 4,881,073, 4,875,039 and 4,876,538 and U.S. patent application Ser. Nos. 409,390, 464,675, 465,894, 464,680, 429,615, 429,541, 409,605, and 456,742 which are incorporated herein by reference in their entirety. The system is a distributed network of switches comprised of a plurality of local switches 112, a plurality of lata switches 114 and a plurality of hub switches 116 with each switch being located in a different geographical location within an area being serviced by the system. The hub switches 116 may be located totally within a country to provide national service or in multiple countries to provide international service. Only a single portion of the network is labelled with reference numerals with it being understood that repeating portions exist such as for that portion under the jurisdiction hub switch #P. Communication links which are illustrated as a dotted arrow represent network structure which has been omitted for clarity that is identical to structure that is illustrated in detail. Additionally, one or more sublocal switches may optionally be provided within the system under the jurisdiction of the local switch as described in the aforementioned patents. The sublocal switches have been omitted for purposes of clarity. Each switch has jurisdiction over a geographic area. The functions performed by the local switch 112, the lata switch 114 and the hub switch 116 are described below. A local paging service 118 is typically connected to each of the local switches 112 which offers other paging services than that provided by the present invention although it should be understood that the local switch may be used exclusively to control all services offered at the local level. The local paging service 118 is typically an existing common carrier paging service which services an area within broadcast distance of a transmitter 115 under the jurisdiction of the local paging service to which the local switch 112 has been connected to permit the local paging service to function in the network to transmit pages to a plurality of paging receivers 119 (only one having been illustrated) connected to a peripheral device 119 which may be a data processor printer, telex service, facsimile service or other types of data processing devices. The paging receivers automatically download data stored in their memory upon connection to a printer for producing a printout of the data. The printer is sold with the receiver by Telefind Corporation of Coral Gables, Florida. The paging receivers 119 are described in U.S. Pat. Nos. 4,849,750, 4,851,830, 4,853,688, 4,857,915, 4,928,100, 4,935,732, 4,978,944 and 5,012,235 and U.S. patent application Ser. Nos. 381,483, 381,527, 597,350 and 662,616 which are assigned to Telefind Corporation of Coral Gables, Florida. The transmitter 115 may be either an analog or digital transmitter. Communications between the local, lata and hub switches may be by any existing communication medium 120 such as direct dial-up circuits (IDD Circuits International), direct outward dial circuits (end-to-end), in-bound watts (and other in-bound services that are volume discounted), out-bound watts (and other out-bound services that are volume discounted), feature group A (U.S. service), feature group B (U.S. and European services), MF tie trunks (U.S. and European services), and direct inward dial (international service, where available), as well as any future medium which permits pages to be transmitted between switches. Each of these services are indicated schematically by a bi-directional arrow 120 which interconnects a local switch 112 to a lata switch 114, a lata switch to a hub switch 116, and a hub switch to another hub switch. Furthermore, the local switches 112 are connected to a local paging service 118 by a communication link 122 of any conventional nature, including wires connecting the local switch to the local paging service. Each switch is provided with a local telephone trunk 127 which functions as a maintenance port. Furthermore, dotted bi-directional lines 124 illustrate alternative communication paths between switches which may be used in the case of malfunction or busy conditions. It should be further understood that the network is not limited to any particular communication protocol linking switches, nor connecting the local switch to the local paging service. A telephone trunk 28 functions as an input for manual (telephone handset) and automatic device entry of pages as described below.
The network 110 provides numeric, alphanumeric and data services to all points within the United States and participating countries. In the preferred embodiment of the network, a universal code is used for encoding transmissions of characters over both the communication links 120 and 122 which is compatible with existing analog and digital transmitters 115. A universal code discussed in the aforementioned patents utilizes sixteen tones for encoding all characters for transmission between switches or to a local paging service 118. Each character is transmitted as two successive tones. A X.25 modified transmission protocol which is disclosed in the aforementioned network patents is preferably utilized for transmitting packets of pages between switches.
The network 110 is economical to implement and operate as a consequence of utilizing distributed processing technologies and transmission of pages periodically in packets of pages between the switches. Dynamic interaction between a frequency agile pager, which preferably is of the type described in the above-referenced receiver patents and applications and the network 110 efficiently utilizes transmission time that is available in the frequency spectrum. One of the distinct advantages of the network 110 is that it utilizes existing paging common carriers to deliver pages to the end user with existing paging RF coverage in the United States being greater than 85% of its geographical area with just two 150 MHz frequencies with a total of 10,500 additional frequencies being available for paging receiver use. Wire line common carriers, private systems, hospital, government, emergency and many other services can be accommodated by the utilization of dynamic frequency programming, by the network 110 to change the frequency band on which individual paging receivers may receive pages.
The network 110 provides an integrated sublocal, local, regional and nationwide paging network that is transparent to use by the subscriber and provides for pages (data transmissions) to be called into an existing local paging service 118 by the making of a local phone call on a telephone trunk 128 connected to the local switch 112 in a conventional fashion as well as to any lata switch 114 throughout the network 110 by a local phone call to telephone trunk 126. The functionality of permitting pages or data transmissions to be originated anywhere within the network 10 by local telephone call, preferably by calling a single number within the country (950-XXXX) avoids the telephone expense and system overhead caused by calling of a central switch to originate a page. It should be understood that the network's usage of periodically transmitting packets of pages between switches results in a much lower cost than the cost of 800 or conventional long distance service. The phone trunk 126 for calling the lata switch 114 to place a page anywhere within the network 110 is indicated by bi-directional arrows to each lata switch. Regardless of the location of the person making the telephone call to a lata switch 114 over telephone trunk 126 to originate a page, the lata switch will formulate a page with the destination specified by geographically descriptive digits of the identification code inputted with the call to request a page or data transmission to the lata switch and the network 110 will automatically route the page through the switches of the network to the person being paged by way of the local switch 112, which stores a subscriber file that stores the identification code of the subscriber and paging receiver. The local switch 112, which stores the identification code inputted with the page in its subscriber file, adds one or more destinations to the page and transmits the page(s) to the local paging service 118 and/or the network 110 by way of the lata switch 114 having jurisdiction. The person placing the page by calling the local switch 112 on telephone trunk 128 or the lata switch 114 on telephone trunk 126 does not have to know the location of the person receiving the page.
The local switch 112 is connected to a participating common carrier paging service 118 located in a particular geographic area. The local switch 112 has local direct inward dial trunks 128 which permits the subscriber to use a local telephone call to place a page. Pages over the local telephone trunks 128 may be (1) numeric characters which are entered manually by DTMF tones or other telephone coding mechanisms, (2) alphanumeric characters which are entered manually by DTMF tones or other coding mechanisms, (3) alphanumeric characters which are entered by an automatic message inputting device using an encoding format having a transmission protocol of conventional nature such as DTMF tones or (4) a high speed (baud rate) encoding protocol such as an X.25 protocol permitting a variable number of pages or data transmissions each with its own network destination to be formed into a packet which is transmitted to a single switch. The local switch 12 has voice prompting which facilitates the person placing a call on the telephone trunk 28 to enter a message to be transmitted as a page.
The local switch 112 processes the pages received from the telephone trunk 128 and from the associated lata switch 114 to which the local switch is connected by the communication link 120. It should be understood that the local switch 112 has programming which automatically and dynamically monitors paging traffic when a plurality of transmission frequencies are used and allocates the frequencies available to the paging service 118 for transmission to the paging receivers to maximize the local paging services paging throughput as described below. The local switch 112 calls the resident local paging terminal of the paging service 118 and determines how much air time it has to deliver a batch of pages to the transmitter 115 associated with the local paging service. The local switch 112 then calls the local paging terminal of the local paging service 118 and transmits a batch of pages encoded in the hybrid encoding format described below which is compatible with existing analog and digital FM paging transmitters.
The local switch periodically transmits packets of pages or data transmissions stored in an outbound lata buffer over communication link 20 to the lata switch 114 having jurisdiction over it which provides cost efficient transmission and efficient page or data transmission processing. This architecture is highly efficient in routing the pages originating at the local switch 112 to be transmitted by the network 110 which are intended for broadcast by a transmitter remote from the local switch having a subscriber file storing the identification code of the subscriber to which data or a page is to be transmitted.
When the subscriber desires to receive regional, national, or international service, the local lata switch 112 is programmed by the subscriber by simple telephone area code entries which identify the service areas to which pages or data transmissions are to be transmitted. The programming is accomplished by adding or deleting one or more area codes of the subscriber's destination field contained in a subscriber file maintained in the subscriber's local switch 112. In the United States, area codes are used for ease of subscriber use and telephone books may then serve as the service area directory. The same ease of use is available to worldwide customers with county-city code entries available from telephone books in any airport, hotel or business.
The local switch controls the generation of individual pages or data transmissions having message detail as described below with reference to FIG. 6. The number of pages or data transmissions which are generated in response to a page received without an area destination from the telephone trunk 128 or from a lata switch 114 is determined by the central processor of the local switch 112 interrogating any area destinations listed in the destination area code field of the local switch as described below with reference to FIG. 3. Each page or data transmission generated by the processor contains the same message content. A separate page or data transmission is generated for each destination area listed in the destination area code field and if the local service option of the service option field is selected, as described below, an additional page or data transmission is generated for broadcast by the local paging service 118 without an area destination in the network which is processed by the local switch 112 as a page or data transmission received from the network for broadcast by the local paging service. Furthermore, each individual page or data transmission generated by a local switch 12 contains one or more commands. The commands which are added to each page or data transmission transmitting a message are determined by the operation of the central processor of the local switch 112 in response to interrogation of the selected service options of the subscriber. Programming of receivers with the channel programming command is in response to the local switch programming the receiver to receive one or more channels, subscriber programming of destination areas of reception in the destination area code field, and the degree of utilization of the channels of the local transmitter 115.
The central processor of the local switch 112 processes each individual page or data transmission received from the network to determine if it originated from a local switch 112 or a lata switch 114. This determination is made by determining if a destination header identifying a lata switch 114 originating the page precedes the paging receiver identification code in a packet having the configuration of FIG. 6. In the absence of the header (which is a geographic identification of the originating lata switch 112 in the network) in an individual page or data transmission, the page or data transmission is processed exclusively by the local switch 112 for broadcast by the associated local paging service 118 without interrogation of a subscriber file in the local switch. If the header is found in a page or data transmission, the central processor processes the page as either a request to reprogram the subscriber file or as a page received on the telephone port 128 without an area destination which must be processed to determine one or more area destinations and be formed into new pages each with a different area destination from the area destination field if transmission by the network is to occur and into a page or data without an area destination if transmission by the local service 18 is to occur.
The local switch 112 also serves as the dynamic programming interface between the paging or data receivers 119 and the network 110. The local paging service 18 may cause channels to be received by receivers 19, change subscriber identification codes and add new customers to the network 110 utilizing the local switch 112. The functionality of the receiver 119 can be changed from a fixed channel to a multi-channel or a scanning receiver as required by use of the channel programming command.
Messages originating at the local switch 112 which are transmitted to the lata collector switch 114 having jurisdiction over it are packetized as described below with reference to FIG. 6. Destination area codes (telephone area codes or other geographically descriptive code) are added to pages or data transmissions prior to transmission to the lata switch 114 and the receiver 119 is dynamically and automatically reprogrammed for the new service areas by the local switch 112 issuing channel programming command(s) which ensures that the receiver 119 is programmed to receive channels in each designated area. The current channels remain in the receiver 119 to avoid loss of a message while a subscriber is still in the area.
The lata switch 114 provides a second tier of network intelligence. This intelligence includes page or data transmission processing, packetizing and routing. The lata switch 114 receives packets of pages from each of the local switches 112 within its jurisdiction as well as the hub switch 116 having jurisdiction over it. The lata switch 114 provides the geographical presence for the network 110 to originate and terminate pages or data transmissions utilizing dial-up or dedicated communication services.
The lata switch 114 is responsible for collection of pages from the local switches 112 within its jurisdiction. When a packet of pages is received from the local switch 112, it is disassembled, processed and stored for transmission to the proper destination(s) in one or more packets each consisting of one or more pages which are intended for destination(s) either within or outside the lata switch jurisdiction. The lata switch 114 periodically transmits packets of pages stored in its outbound hub buffer and its outbound local buffer to the associated hub switch 116 having jurisdiction over it and to local switches 112 within its jurisdiction which provides cost efficient transmission and efficient processing by avoiding processing by a single central switch controlling the network 110. This architecture is highly efficient in routing pages or data transmissions originating within the jurisdiction of the lata switch 114 which are intended for broadcast outside its jurisdiction as well as distributing pages or data transmissions from one local switch 112 to one or more additional local switches within the jurisdiction of the lata switch. If the page or data transmission is destined for distribution within the jurisdiction of the lata switch 114, the page or data transmission is processed into packets for transmission to each of the local switches 112 within its jurisdiction or alternatively to less than all of the local switches in its jurisdiction. The pages or data transmissions are then periodically transmitted as packets to the local switches 112 within the jurisdiction of the lata switch 114.
The lata switch 114 is also responsible for collection of pages outside its jurisdiction to be broadcast to the local switches 112 within its jurisdiction. Packets received from the hub switch 116 are disassembled, processed, and packetized for transmission to the destination local switches 112.
The function of the lata switch 114 in collecting requests for placing pages or data transmissions in the network or to reprogram the subscriber file of a local switch 112 by placing a local phone call on telephone trunk 126 is an important aspect of the network. The lata switch 114 places the header discussed above, which geographically identifies the lata switch originating the page or data transmission in front of the receiver identification code, in a packet as illustrated in the message detail of FIG. 6 to enable the local switch 112 to differentiate between pages or data transmission which are for broadcast by the local service 118 associated with a receiving local switch 112 and pages or data transmission which require access to the subscriber files to generate one or more pages or data transmissions for broadcast or for reprogramming a subscriber file. Preferably, the header is four digits comprised of a country code followed by the telephone area code identifying the lata switch 114 which received the call for the originating page or data transmission.
The hub switch 116 provides the third tier of network intelligence and serves as an inter-regional communications link. One hub switch 116 will preferably be located in each international region to serve as a network routing switch. In the United States, a hub switch 116 will be located within the region served by each of the Bell regional companies (RBOC's). Accordingly, in the United States the preferred implementation of the network 110 includes seven distinct hub switches 116. Each hub switch 116 in a preferred embodiment can have fifty-five lata switches 114 under its jurisdiction. The hub switch 116 also serves as a network routing switch for inter-hub calls when pages or data transmissions are to continue in the hub-to-hub network.
When a packet of pages is received from either another hub switch 116 or a lata switch 114 within its jurisdiction, the pages or data transmission are disassembled for examination. Each page or data transmission is examined for its destination address(es). A determination is made if the hub switch 116 should forward the page or data transmission to one of the six adjacent hub switches or forward the page or data transmission to a lata switch 114 within its jurisdiction. The pages or data transmissions are then destination processed and packetized for transmission to either another hub switch 116 or a lata switch 114 within its jurisdiction.
FIG. 3 illustrates a memory map of the RAM of a local switch 112. The RAM has four main storage areas which are the subscriber files 154, channel files 156, lata buffers 158 and local buffers 160.
Each local switch 112 is allocated a capacity of, for example, 10,000 subscribers which are identified by a four-digit code stored in field 162 of the subscriber files 154.
Field 164 stores the subscriber's local telephone number within the area code serviced by the lata switch 114 having jurisdiction.
Field 166 is the subscriber's receiver identification code which uniquely identifies the subscriber and the receiver 119 of the subscriber which is to receive pages or data transmissions throughout the network 110. The receiver identification number (code) consists of 8 digits with the four most significant digits geographically representing the area serviced by the associated lata switch 114 (country code as the most significant digit followed sequentially by area or city code lesser significant digits) and the four least significant digits being digits assigned to identify 10,000 subscribers within the jurisdiction of the local switch. The capacity of the network 110 is 100 million subscribers with the eight digit identification code. The least significant numbers of the identification code define subscribers of a specific local switch 112 within the jurisdiction of the lata switch 114.
Field 168 stores the service options which each subscriber may choose to have provided by the local service 118. The service options control the commands, which are used with pages or data transmissions sent to the receivers 119. The main CPU interrogates the particular subscriber file identified by the identification code inputted with the request for a page or data transmission by telephone trunks 126 or 128, causes storage of the page or data transmission, determines the destination(s) of the page or data transmission and the appropriate system command to be used to transmit the page or data transmission. It should be understood that the service options may be dynamically programmed through voice prompted communications over the telephone trunk lines 128 with the local switch 112 and through telephone calls to the lata switch 114 by trunk 126 as described below.
The service options are described as follows. The service option "a" is for no service which is a condition when an active subscriber does not wish to receive any pages or data transmissions such as may occur when the subscriber is on vacation or is otherwise desirous of not being reached for a period of time but does not wish to be removed from the subscriber base of the system. The service option "b" is for pages or data transmissions to be broadcast only by the transmitter 115 of the local service 118. The service option "c" is for regional service which is for pages or data transmissions to be broadcast throughout all of the local services 118 which are within its lata switch jurisdiction. The service option "d" is for national service which is for pages or data transmissions to be broadcast from the local switch 112 to one or more lata switches 114 other than the lata switch having jurisdiction over the local switch. While not illustrated, an international service option may be added. The service option "e" is for a repeat of pages or data transmissions for any of the "b" "c" or "d" service options so that a page or data transmission is broadcast more than once. The service option "f" is for data service which causes the page or data transmission to be stored in a specified section of the receiver memory. The service option "g" is for external data service which commands the receiver 119 to output the page or data transmission to the external data port of the receiver. This option permits the receiver 119 to support peripheral devices such as printers or processors to provide a wide range of data services.
The following additional fields are provided. The fifth field 170 is the subscriber's name and the subscriber's specified account number. The sixth field 172 is the subscriber's account number entry for purposes of interval billing by the local service 118. The seventh field 174 is the subscriber's count (local, regional or national) which is a total of the number of pages or data transmissions made in a billing period. The eighth field 176 is the total number of data characters sent during the billing period.
The ninth field 178 is the destination (area code(s)) of each of the pages or data transmissions. For local service, there is no area code specified. For regional service, the area code of the associated lata switch 114 having jurisdiction over the local switch 112 is specified and for national and international service, one or more area codes or other geographic identification identifying lata switches other than the lata switch having jurisdiction over the local switch are specified. For international service, a country code may be used to identify lata switches 114 within a particular country. Any number of area codes may be specified but in a preferred embodiment of the network 110, three area codes is a maximum number of lata switches 114 which may be specified as regions to receive pages from the local switch 112.
The above-referenced description describes the first file of the n (10,000) possible subscriber files stored in the subscriber files 154. It should be understood that the other subscriber files have the same configuration. Access to the subscriber file is obtained by a voice prompted message requiring the inputting of a secret code which if inputted correctly is followed by voice prompted requests requesting specification of the information of the subscriber file to be changed.
The frequency files 156 perform an important function in the network 110. The frequency files 156 contain n possible lata files with each individual file identifying up to, for example, 15 four-digit numbers that represent broadcast channels available within the service area of a lata switch 114. Thus, each of the individual lata switches 114 in the network 110 will have a separate frequency file which identifies all of the channels which are available to transmit pages or data transmissions from the transmitters 115 associated with the local services 118 under the jurisdiction of that lata switch 114. The channels are stored as a four-digit number in a hexadecimal numbering system which requires only four digits of space. A file containing all zeros (no channel) will cause an invalid area code message to be returned to a subscriber attempting to reprogram service areas. The frequency files are the source of channels which are utilized by the channel programming command to program each receiver 119 for operation in each lata switch jurisdiction and the local switch jurisdiction. For example, a receiver 119 which is to be serviced by only a single local service 118 may be programmed to receive only a single or a number of channels up to the number of channels used by that local paging service. Furthermore, for regional service or national service, the frequency files 156 are used to program the receiver 119 to receive pages or data transmissions from the channels used by the local services 118 within the designated area codes representative of the service areas serviced by the lata switches 114. Furthermore, if a receiver 119 is to be programmed to receive messages in a particular area serviced by a lata switch 114 as a consequence of the subscriber travelling, the channel programming command utilizes the channels stored in the file number corresponding to the jurisdiction of the lata switch 114 in the area to which the subscriber is to travel, to dynamically program the channel(s) which the paging receiver is to receive in that area. For service in a local region, the frequency files are used as a source of channels to be used by the channel programming command to dynamically shift the channels on which the paging receiver is to receive a page, to adjust the channels used in the broadcast area used by the local service 118 associated with the local switch 112 based on the amount of traffic on each channel and to further provide a source of channels which are to be used for specialized services for transmitting particular types of information to particular subscribers such as, but not limited to stock quotations.
The lata buffers 158 consist of an inbound lata buffer 180 and an outbound lata buffer 182. The inbound lata buffer 180 functions to receive pages or data transmissions coded in ASCII which have been processed to strip the X.25 transmission protocol used for transmitting pages from the lata switch 114 to the local switch 112 and converted from the hybrid code described below to ASCII. Pages or data transmissions which are initially stored in the inbound lata buffer 180 are processed for destination and are either for broadcast by the associated local service 118 in which case they are ultimately stored in the appropriate identification code buffer 186 which matches the least significant digit of the identification code contained with the page or data transmission or in the outbound lata buffer 182 if the page or data transmissions originated from one of the lata switches 114 by calling on the telephone trunk 126 and which has a final destination which is determined by the field 178 of the subscriber file 154.
The local buffers 160 are comprised of an inbound buffer 184 for receiving all local inbound pages or data transmissions which originate from the trunk line 128 which is connected to the local switch 112 and a plurality of identification code buffers 186 which are each individually assigned to store outbound pages or data transmissions with a particular least significant identification code digit of the number base used for the subscriber identification code which are to be transmitted to a receiver 119. All of the received pages or data transmissions from the local switch 112 are initially stored in the buffer 184. Each of the individual identification code buffers 186 stores pages or data transmissions for broadcast by the local service 118 in batches which are grouped by the least significant digit of the subscriber identification code received with the page or data transmission after sorting by the CPU. In other words, the least significant digit of the subscriber identification code within a page or data transmission for broadcast by a local service 118 determines in which of the identification code buffers 186 the page or data transmission is stored. For example, if the last digit of the identification code of a page or data transmission for broadcast by the local service 118 ends in the digit 0, the page or data transmission is stored in the identification code buffer identified by "0".
FIG. 4 is a memory map of the random access memory of the lata switch 114. The random access memory has three main areas and two optional areas. The three main areas are hub buffers 188, local buffers 190 and a lata identification code (ID) memory 192. The optional memory areas are an all call buffer 194 for storing nationwide pages or data transmissions received from the hub switch 116 which are to be transmitted to all of the local switches 112 under the jurisdiction of the lata switch 114 and an all call buffer 196 which stores pages or data transmissions received from one of the local switches 112 which are to be transmitted to all of the local switches under the jurisdiction of the lata switch 114.
The hub buffers 188 are an outbound hub buffer 198 and an inbound hub buffer 200. The outbound hub buffer 198 stores pages or data transmissions to be periodically transmitted to the hub switch 116 having jurisdiction over the lata switch 114 under the control of the CPU. The inbound hub buffer 200 stores pages or data transmissions which are periodically received from the associated hub switch 116 via storage in a buffer of the CPU.
The local buffers 190 are comprised of an inbound local buffer 202 which stores groups of inbound pages or data transmissions received from the local switches 112 and a plurality of outbound local buffers 204 each of which store groups of pages or data transmissions which are to be transmitted periodically to a specific one of the local switches with a separate outbound local buffer being provided for each of the local switches under the jurisdiction of the lata switch 114. The CPU processes each of the pages or data transmissions which is received in the inbound buffers 200 and 202 by destination and causes storage in the outbound buffers 198 and 204 which is associated with the destination of the page or data transmission.
The lata identification code memory 192 stores the subscriber identification numbers of all of the subscribers which are associated with each of the local switches 112 within its jurisdiction. The lata identification code memory 192 is used for determining the local switch 112 which stores a subscriber file of the subscriber used for pages or data transmissions which are inputted to the system from a direct call by telephone trunk 126 to a lata switch 114 or from a direct call by telephone trunk 126 to a lata switch by a subscriber to program the reception area of pages or data transmissions by changing the destination 178 of the pages or data transmissions. The lata identification code memory 192 may be organized by subscriber identification codes which are within the jurisdiction of each local switch 112 so that the matching of an identification code of a page or data transmission inputted to the lata switch 114 in the lata identification code memory 192 provides the location of the particular local switch which stores the subscriber file 154 of that subscriber.
In order to avoid having to provide additional storage space in each of the outbound local buffers 204, the optional all call buffer 194 may be provided to store a single page or data transmission, received from the hub switch 116 having jurisdiction over the lata switch 114, which is to be transmitted to each of the local switches 112. Similarly, the optional all call buffer 196 may be provided for receiving pages or data transmissions from an individual local switch 112 which are to be transmitted to all of the local switches within the jurisdiction of the lata switch 114.
For pages, data transmissions or requests to reprogram the subscriber file 154 which are made to a lata switch 114 over telephone trunk 126 which require access to a subscriber file outside the jurisdiction of the lata switch, the CPU forms a page or data transmission contained in a packet having an area destination identified by the four most significant digits of the identification code inputted to the lata switch 114 preceded by the identification code of the receiver 119 to receive the page or data transmission, preceded by the geographical area identification of the lata switch receiving the call to originate a page or data transmission or to program the subscriber file which is transmitted by the network 110 to the specified area destination. For pages or data transmissions to be billed to subscribers stored in the subscriber file 154 of a local switch 112 within the jurisdiction of the lata switch 114 or requests to program the subscriber file 154, the CPU forms a packet having an area destination of the local switch 112 within its jurisdiction which stores the subscriber identification code as determined by interrogation of the lata identification code buffer 192 by the CPU. The ultimate destination of a page or data transmission is determined by the destination field 178 of the subscriber file 154 matching the identification code of the receiver 119 either within or outside the jurisdiction of the lata switch that is called in over telephone trunk 126. The local switch 112 containing the subscriber file 154 creates the one or more pages or data transmissions in accordance with the information in the subscriber file including the adding of destination(s) and the appropriate command. Transmission of the pages or data transmissions created by the local switch 112 in response to a call to a lata switch 114 is identical to the transmission of pages or data transmissions originating at the local switch 112 by the placing of a telephone call on telephone trunk 128. In the case of requesting programming of the subscriber's file 154, the caller must in response to a voice prompted message enter a four-digit secret identification code to obtain access to the subscriber file with voice prompted messages being supplied under the control of the CPU to control the input of programming information from the subscriber. To request a page or data transmission by calling the lata switch 114, the caller will receive a voice prompted message to enter the subscriber identification code and then the appropriate page or data transmission.
FIG. 5 is a memory map of the random access memory of the hub switch 116. The hub switch memory map is comprised of four main parts which are hub buffers 206, lata buffers 208, lata code tables 210 and hub routing codes 212. The hub buffers 206 are comprised of a plurality of inbound hub buffers 214 which correspond in number to the number of other hub switches 116 in the network 110 which have direct connection to the hub switch and a corresponding number of outbound hub buffers 216. The individual inbound hub buffers 214 each store pages or data transmissions received from one of the hub switches 116 with pages or data transmissions received from each adjacent hub switch 116 being stored in only a single one of the inbound hub buffers 214. Similarly, pages or data transmissions which are to be transmitted to another hub switch 116 are stored in the outbound hub buffer 216 which is associated with the destination hub switch to which they are being transmitted with all pages or data transmissions which are to be routed to a single hub switch being stored in a corresponding one of the outbound hub buffers 216 with a separate hub buffer being associated with each hub switch to which pages or data transmissions are directly transmitted. The lata buffers 208 are comprised of a plurality of inbound lata buffers 218 which correspond to the number of lata switches 114 under the jurisdiction of the hub switch 116. The inbound lata buffers 218 store all of the pages or data transmissions received from the lata switches 114 under the jurisdiction of the hub switch 116. The outbound lata buffers 220 correspond in number to the lata switches 114 under the jurisdiction of the hub switch 116 with a separate lata buffer being associated with each of the lata switches. The outbound lata buffers 220 store groups of pages or data transmissions to be periodically transmitted to their associated lata switch 114. Pages or data transmissions which are stored in the inbound hub buffers 214 are processed by destination by the CPU and stored in either the outbound hub buffer 216, which is the destination of the pages or data transmissions not to be received by a lata switch 114 under the jurisdiction of the hub switch 116, or in one or more of the outbound lata buffers 220 if the destination of the packets received from another hub switch 116 is a lata switch under the jurisdiction of the hub switch. The CPU also processes the pages or data transmissions stored in the inbound lata buffers 218 according to their destination and causes their storage in either the outbound hub buffers 216 if the pages or data transmissions are to be sent to a lata switch 114 outside of the jurisdiction of the hub switch 116 or to one or more of the outbound lata switches 220 if the pages or data transmissions are to be received by one or more lata switches 114 under the jurisdiction of the hub switch 116.
The lata code tables 210 store each of the lata (telephone area or other geographic identifier) codes 222 under the jurisdiction of the hub switch 116 which are utilized by the comparison performed by the CPU with the pages or data transmissions stored in the inbound hub buffers 214 and inbound lata buffers 218 to determine in which of the outbound hub buffers 216 or outbound lata buffers 220 the pages or data transmissions should be stored. Each separate lata code 222 corresponds to the geographical identification of the lata switch 114 which in the preferred embodiment is the telephone area code of a lata switch's jurisdiction.
The routing codes 212 determine the transmission routes to other hub switches on a priority basis to which a packet should be sent which are not intended for a lata switch 114 within the jurisdiction of the hub switch 116. It should be understood that a number of factors may be considered in choosing the priority of a route to be used to transmit a packet from one hub switch 116 to another hub switch. It would appear on first analysis that a direct first hub switch to second hub switch route would be best but often the switching overhead of routing a packet through one or more intermediate switches is more than compensated for by the efficiency of a route having one or more intermediate hub switches by adding additional pages or data transmissions to the packet which are inputted to the one or more intermediate hub switch(es) to the packets being transmitted to the second hub switch. The CPU compares the destination of the groups of pages or data transmissions stored in the inbound hub buffers 214 and the inbound lata buffers 218 to determine if these pages or data transmissions should be routed to another hub switch 116. The hub routing codes 212 are referred to by default when a match is not found by the CPU in comparing the destination of the pages or data transmissions stored in the inbound hub buffers 214 and inbound lata buffers 218 with the codes stored in the lata code tables 210. Each page or data transmission stored in the inbound hub buffer 214 and inbound lata buffers 218 is processed by destination by the CPU and caused to be stored in the outbound buffers 216 and 220 which correspond to its destination. Each individual hub routing code contains the hub switch destination priorities for pages or data transmissions to be sent to a single lata switch 114 outside the jurisdiction of the hub switch 116. For example, for the lata switch 114 having jurisdiction over area code 312, the hub routing code 234 determines the priorities in descending order from the highest priority to the lowest priority such that the highest priority hub would be #1 followed by #2-#6.
FIG. 6 illustrates a preferred transmission protocol to be used for transmitting packets between switches. The protocol which is used is a modified X.25 protocol. As illustrated, each packet contains five separate layers. The first layer is the destination telephone number which is the receiving port to receive the page or data transmission. With reference to FIG. 2 if a packet of X.25 formatted pages or data transmissions were to be sent from a first lata switch 114 to its associated hub switch 116 over communication path 120, the destination telephone number would be the telephone number of the hub switch. It should be further understood that the X.25 transmission protocol as described herein may be utilized with other types of communication mediums between switches such that a destination telephone number may be replaced with another form of address of the receiving switch. The second layer indicates the packet size field in terms of succeeding layers of information. In the present case levels 3, 4 and 5 are provided which dictates that the packet size would store the number 3 to indicate the subsequently lower third, fourth and fifth layers. The third layer contains an origination switch address and a destination switch address which can be either telephone numbers or real addresses within the network 110. The fourth layer is the number of pages or data transmissions which are contained in a packet. As illustrated, this number may be any integer n. The fifth layer is one or more pages or data transmissions which each correspond to an individual page or data transmission to be sent to a particular receiver 119.
Each message includes the following information. In accordance with standard X.25 protocol, a beginning of file header is included. Following the beginning of file header is a receiver I.D. code which is the identification code of the destination receiver which is identical to the subscriber identification code stored in the subscriber files 154 of the subscriber to receive the page or data transmission. Following the I.D. code is the destination(s) of the page or data transmission which is geographically descriptive of the area to which the page or data transmission is to be transmitted and is added by the local switch 112 interrogating the destination field 178 of FIG. 3. In the preferred embodiment, the destination is a combination of country and area code as utilized by the telephone system to identify the area to which the page or data transmission is destined. For each country, the same country code will be used so that if the system 110 as illustrated in FIG. 1 were to be utilized for the United States, the first digit of the destination would be a 1. Similarly, the destinations in other countries would be followed by different numbers identifying those countries followed by code which breaks up the identified country into smaller geographic regions. It should be understood that a destination which is not based on the telephone system is equally usable with the present invention. The field of special commands are the system commands which are transmitted with each page or data transmission to a receiver. The "page" or "data transmission" is the part which is to be displayed to the bearer of the receiver 119 and may be numeric or alphanumeric characters. The end of the file and file size information are part of a standard X.25 protocol.
FIG. 7 illustrates an interconnection between a paging receiver (left side) in accordance with the above-referenced receiver patents and a printer (right side) which has been offered for sale by Telefind Corporation of Coral Gables, Florida. The "EXTERNAL ANTENNA" pin is for connection only to an external antenna and connects the RF signal from the external antenna to the receiver internal antenna. The "LINK" pin is detected by the printer to determine if the receiver 119 is connected or not. If the receiver is not connected when peripheral power is on, then the CPU of the printer will detect that the "LINK" pin is high. Otherwise the "LINK" pin will be low. The pin "EXTERNAL BUZZER" outputs a 2KHz trigger signal when a page or data transmission is received. The "EXTERNAL BUZZER" pin also outputs the 2KHz trigger signal when display of a message is complete. The pin "PRG VCC" is supplied 5 volt power by the attached printer to provide power to the receiver 119 whether the pager is powered or not. The "GROUND" pin is ground for the printer and receiver 119. The pin "BUSY" is pulled high by the printer if the printer is too busy to handle input data bits on the "PRTDATA" pin of the receiver 119. The "PRTDATA" pin is the data output from the receiver 119 to the printer. Serial data bits are fed to the printer to drive the printer to generate text corresponding to the data bits. The "DIS AUDIO" pin provides external audio which may be the X.25 modified protocol of FIG. 6 encoded into audio tones which modulate the channel carrier on which information is received by the receiver 119. When the "DIS AUDIO" pin is high, it indicates that the display button is pressed. The memory of the receiver 119 stores the text to be printed by the printer. The text is downloaded through the aforementioned interconnection upon connection to the printer to generate a hard copy of the text stored in the memory.